package com.youlu.campus.base.certificate;

import com.youlu.campus.base.base.EntityBase;
import com.youlu.campus.base.certificate.enums.CertificateStatusEnum;
import lombok.Data;
import org.springframework.data.mongodb.core.index.Indexed;

import java.util.Date;

/**
 * @author zhuhuaiqi
 * @date 2020/4/9 14:52
 */
@Data
public class CertificateBase extends EntityBase {

    /**
     * 用户Id
     */
    @Indexed
    protected String userId;

    /**
     * 大学名称
     */
    protected String universityName;

    /**
     * 姓名
     */
    protected String name;

    /**
     * 邮箱
     */
    protected String email;

    /**
     * 手机号
     */
    protected String mobile;

    /**
     * 证书编号
     */
    @Indexed
    protected String certificateNo;

    /**
     * 盖章状态
     */
    protected String status = CertificateStatusEnum.STAMPING.getCode();

    /**
     * 盖章时间
     */
    protected Date stampTime;

    /**
     * 证书基础图片
     */
    protected String certificateImage;

    /**
     * 证书生成后的图片
     */
    protected String certificateFinalImage;

    /**
     * 盖章图片
     */
    protected String stampImage;


    /**
     * 是否已经领取过
     */
    protected boolean received;

    /**
     * 领取时间
     */
    protected Date receiveTime;

    /**
     * 证书生成时间
     */
    protected Date generateTime;

    /**
     * 证书类型
     * CertificateTypeEnum
     */
    protected String certificateType;

    /**
     * 批次号
     */
    @Indexed
    protected Long batchNo;

    /**
     * 订单号
     */
    @Indexed
    private String orderNo;

    /**
     * 支付时间
     */
    protected Date payTime;

    /**
     * 完成打卡时间
     */
    protected Date finishSignDate;

    /**
     * 是否已经同步到盖章系统
     */
    protected boolean sync;

    /**
     * 同步结果
     */
    protected String syncResult;

    /**
     * 打卡项目ID
     */
    private String signPlanId;
}
